#ifndef CAMERA_H_
#define CAMERA_H_

// By: Jesse Guarascia de Urena
// Camera class
// Allows for dynamic alteration to the current camera position

#include "Rect.h"
#include <vector>

class Camera
{
private:
	static std::vector<Camera *> camera; // Camera array
	static Camera *currentCamera; // Current camera selected

	Rect pos; // Position of the camera
	bool current; // W-o-N this is the current camera

public:
	Camera(void);
	~Camera(void);

	// Get/Set the position of the camera
	inline bool isCurrent() { return current; }
	inline void SetCurrent(bool c) { currentCamera = this; current = c; }

	inline Rect &Pos() { return pos; }

	// Get the current camera
	static inline Camera* CurrentCamera() { return currentCamera; }

};

#endif // CAMERA_H_